home *** CD-ROM | disk | FTP | other *** search
/ Micromanía: 150 Juegos 2010 / 150Juegos_16.iso / Shareware / Shape Smash / shape-smash.swf / scripts / Code / FIELD / contacts / _rr109.as < prev   
Encoding:
Text File  |  2010-05-14  |  4.3 KB  |  121 lines

  1. package Code.FIELD.contacts
  2. {
  3.    import Box2D.Collision.Shapes._bs125;
  4.    import Box2D.Collision.Shapes._mo808;
  5.    import Box2D.Common.Math.b2Vec2;
  6.    import Box2D.Dynamics._th791;
  7.    import Code.FIELD._pn539;
  8.    import Code.FIELD.body._kc461;
  9.    import Code.LIB._gr318;
  10.    
  11.    public class _rr109 extends _lf150
  12.    {
  13.       private var iBlockRad:Number;
  14.       
  15.       public function _rr109(param1:_pn539)
  16.       {
  17.          var _loc2_:Number = NaN;
  18.          var _loc3_:Number = NaN;
  19.          super(param1);
  20.          _loc2_ = iWorld.iSize / iWorld.PS;
  21.          _loc3_ = Math.pow(_loc2_,2);
  22.          iBlockRad = Math.sqrt(_loc3_ + _loc3_);
  23.       }
  24.       
  25.       private function _qa296(param1:_kc461) : void
  26.       {
  27.          var _loc2_:Array = null;
  28.          var _loc3_:int = 0;
  29.          var _loc4_:Number = NaN;
  30.          var _loc5_:Array = null;
  31.          _loc2_ = _bs125(param1.iB2Shape)._fh374();
  32.          _loc3_ = _bs125(param1.iB2Shape)._px512();
  33.          _loc4_ = 0.5 / iWorld.PS;
  34.          _loc5_ = param1.iVertexes;
  35.          b2Vec2(_loc5_[0]).x = b2Vec2(_loc2_[0]).x - _loc4_;
  36.          b2Vec2(_loc5_[0]).y = b2Vec2(_loc2_[0]).y - _loc4_;
  37.          b2Vec2(_loc5_[1]).x = b2Vec2(_loc2_[1]).x + _loc4_;
  38.          b2Vec2(_loc5_[1]).y = b2Vec2(_loc2_[1]).y - _loc4_;
  39.          b2Vec2(_loc5_[2]).x = b2Vec2(_loc2_[2]).x + _loc4_;
  40.          b2Vec2(_loc5_[2]).y = b2Vec2(_loc2_[2]).y + _loc4_;
  41.          b2Vec2(_loc5_[3]).x = b2Vec2(_loc2_[3]).x - _loc4_;
  42.          b2Vec2(_loc5_[3]).y = b2Vec2(_loc2_[3]).y + _loc4_;
  43.          param1.iBody.iB2Body._ja306(b2Vec2(_loc5_[0]),b2Vec2(_loc5_[0]));
  44.          param1.iBody.iB2Body._ja306(b2Vec2(_loc5_[1]),b2Vec2(_loc5_[1]));
  45.          param1.iBody.iB2Body._ja306(b2Vec2(_loc5_[2]),b2Vec2(_loc5_[2]));
  46.          param1.iBody.iB2Body._ja306(b2Vec2(_loc5_[3]),b2Vec2(_loc5_[3]));
  47.          param1.iFringes[0][0] = _loc5_[0];
  48.          param1.iFringes[0][1] = _loc5_[1];
  49.          param1.iFringes[1][0] = _loc5_[1];
  50.          param1.iFringes[1][1] = _loc5_[2];
  51.          param1.iFringes[2][0] = _loc5_[2];
  52.          param1.iFringes[2][1] = _loc5_[3];
  53.          param1.iFringes[3][0] = _loc5_[3];
  54.          param1.iFringes[3][1] = _loc5_[0];
  55.       }
  56.       
  57.       override public function _nu423() : void
  58.       {
  59.          var _loc1_:int = 0;
  60.          _loc1_ = 0;
  61.          while(_loc1_ < iShapes.length)
  62.          {
  63.             _kc461(iShapes[_loc1_]).iContacts = new Array();
  64.             if(_kc461(iShapes[_loc1_]).iContactable)
  65.             {
  66.                _qa296(iShapes[_loc1_]);
  67.             }
  68.             _loc1_++;
  69.          }
  70.       }
  71.       
  72.       override public function _om383(param1:_kc461) : void
  73.       {
  74.          var _loc2_:b2Vec2 = null;
  75.          var _loc3_:b2Vec2 = null;
  76.          var _loc4_:_kc461 = null;
  77.          var _loc5_:int = 0;
  78.          var _loc6_:_kc461 = null;
  79.          var _loc7_:_th791 = null;
  80.          var _loc8_:_th791 = null;
  81.          var _loc9_:Number = NaN;
  82.          var _loc10_:Boolean = false;
  83.          var _loc11_:_mf668 = null;
  84.          if(!param1.iContactable)
  85.          {
  86.             return;
  87.          }
  88.          _loc2_ = new b2Vec2();
  89.          _loc3_ = new b2Vec2();
  90.          _loc4_ = param1;
  91.          _loc5_ = 0;
  92.          while(_loc5_ < iShapes.length)
  93.          {
  94.             if(!(_loc4_ == iWorld.iShapes[_loc5_] || !_kc461(iWorld.iShapes[_loc5_]).iContactable))
  95.             {
  96.                _loc6_ = iWorld.iShapes[_loc5_];
  97.                if(_loc4_._tg276(_loc6_) < 0)
  98.                {
  99.                   _loc7_ = _loc4_.iB2Shape.m_body;
  100.                   _loc8_ = _loc6_.iB2Shape.m_body;
  101.                   _loc4_.iBody.iB2Body._ja306(_mo808(_loc4_.iShapeDef).iCenter,_loc2_);
  102.                   _loc6_.iBody.iB2Body._ja306(_mo808(_loc6_.iShapeDef).iCenter,_loc3_);
  103.                   _loc9_ = (_loc2_.x - _loc3_.x) * (_loc2_.x - _loc3_.x) + (_loc2_.y - _loc3_.y) * (_loc2_.y - _loc3_.y);
  104.                   if(_loc9_ <= iBlockRad * 2 * 0.97 * (iBlockRad * 2 * 0.97))
  105.                   {
  106.                      _loc10_ = _gr318._gm72(_loc4_.iFringes,_loc6_.iFringes);
  107.                      if(_loc10_)
  108.                      {
  109.                         _loc11_ = new _mf668(_loc4_,_loc6_);
  110.                         _loc4_._rm474(_loc11_);
  111.                      }
  112.                   }
  113.                }
  114.             }
  115.             _loc5_++;
  116.          }
  117.       }
  118.    }
  119. }
  120.  
  121.